Esquema del funcionamiento de servicios web
Servidor
Cliente
obj.f(arg)
objRef.f(arg)
obj
objRef
registro
Interfaz común
Implementación desde NetBeans de aplicaciones Java clientes
Crear un proyecto de aplicación Java
Crear el cliente del servicio web desde el proyecto. Netbeans pide la URL de acceso y el paquete
La URL de acceso es la de la aplicación web del servidor seguida del nombre del servicio terminado con Service?wsdl
El paquete es el del servicio seguido de .client
Implementación desde NetBeans de aplicaciones Java clientes, II
Netbeans accede a la URL e importa en el paquete del cliente las clases necesarias para el cliente:
Referencias al servicio: La clase tiene el nombre del servicio seguido de Service (BuscadorService en el ejemplo)
Método de obtención de referencias a objetos servidores: getXXXPort(), donde XXX es el nombre del servicio (getBuscadorPort en el ejemplo)
Referencias a objetos servidores: La clase tiene el nombre del servicio (Buscador en el ejemplo) y tiene los métodos publicados
Implementación desde NetBeans de aplicaciones Java clientes, III
Incluir en el proyecto del cliente las clases de los Java Beans requeridos (argumentos y objetos devueltos por los métodos disponibles; Doc en el ejemplo)
ATENCIÓN: En los ejercicios se deben implementar los clientes de servicios web en la forma descrita en las últimas transparencias.
Programación del cliente
Esquema de funcionamiento del cliente:
Instanciar una referencia al servicio
Obtener una referencia a un objeto servidor
Ejecutar métodos
Ejemplo de cliente
public class BuscadorClient {
public static void main(String[] args) {
ws.client.BuscadorService serv =
new ws.client.BuscadorService();
ws.client.Buscador busc =
serv.getBuscadorPort();
List< Doc> rec = busc.busca(servidor);
Depuración
Wsmonitor (wsmonitor.dev.java.net) permite interceptar las llamadas de SOAP.
Para la depuración el cliente debe hacer las peticiones en el puerto 4040, donde escucha Wsmonitor; éste las replica al puerto 8080
El monitor muestra las solicitudes y respuestas (formato XML)
Ejercicio para clase [SW2]
Implementar una de las aplicaciones Java propuestas por otro compañero que accede a un servicio web, y comprobar el funcionamiento correcto de la aplicación y del servicio
Ejercicio obligatorio [SWCC]
Implementar un servicio web que permita gestionar las cuentas corrientes incluidas en dos bases de datos, haciendo las siguientes operaciones:
Pedir la lista total de clientes.
Pedir el saldo total de las cuentas de un cliente.
Implementar una aplicación web que permita al usuario introducir el identificador de una persona y le devuelva su saldo total obtenido accediendo al servicio web anterior.
Ejercicio optativo [SWJSF]
Aplicación web con dos páginas JSF que:
La primera muestra la lista de clientes ofrecida por el servicio web anterior y permite seleccionar uno
La segunda muestra el saldo total del cliente selecionado, proporcionado por el servicio web anterior
Página anterior | Volver al principio del trabajo | Página siguiente |